/*! @file radio.h
 * @brief This file is contains the public radio interface functions.
 *
 * @b COPYRIGHT
 * @n Silicon Laboratories Confidential
 * @n Copyright 2012 Silicon Laboratories, Inc.
 * @n http://www.silabs.com
 */

#ifndef RADIO_H_
#define RADIO_H_

#define  DEV_BOARD  //DEV_BOARD    CORE_BOARD
#define  GPIO_BOARD 


/*****************************************************************************
 *  Global Macros & Definitions
 *****************************************************************************/
/*! Maximal packet length definition (FIFO size) */
#define RADIO_MAX_PACKET_LENGTH     64u


/*****************************************************************************
 *  Global Typedefs & Enums
 *****************************************************************************/
typedef struct
{
    unsigned char   *Radio_ConfigurationArray;

    unsigned char   Radio_ChannelNumber;
    unsigned char   Radio_PacketLength;
    unsigned char   Radio_State_After_Power_Up;

    unsigned short  Radio_Delay_Cnt_After_Reset;

    unsigned char   Radio_CustomPayload[RADIO_MAX_PACKET_LENGTH];
} tRadioConfiguration;

/*****************************************************************************
 *  Global Variable Declarations
 *****************************************************************************/
extern tRadioConfiguration * pRadioConfiguration;
extern unsigned char customRadioPacket[RADIO_MAX_PACKET_LENGTH];
extern unsigned char Radio_Configuration_Data_Array[];

/*! Si446x configuration array */

/*****************************************************************************
 *  Global Function Declarations
 *****************************************************************************/
void  vRadio_Init(void);
char   gRadio_CheckTransmitted(char * returnValue );
void  vRadio_StartTx(unsigned char, unsigned char *);

#endif /* RADIO_H_ */
